package com.wu.shop.module.home.ui.widget

import android.util.Log
import android.view.View
import android.widget.RelativeLayout
import androidx.coordinatorlayout.widget.CoordinatorLayout
import androidx.recyclerview.widget.RecyclerView


/**
 * @author wkq
 *
 * @date 2021年07月12日 11:03
 *
 *@des
 *
 */

class HomeTopBehavior : CoordinatorLayout.Behavior<RecyclerView>() {

    //使用该Behavior的View要监听哪个类型的View的状态变化。
    override fun layoutDependsOn(parent: CoordinatorLayout, child: RecyclerView, dependency: View): Boolean {
        return dependency is RelativeLayout
    }

    // 列表顶部和title底部重合时，列表的滑动距离。
    private var deltaY: Float = 0f

    // 当被监听的View状态变化时会调用该方法
    override fun onDependentViewChanged(parent: CoordinatorLayout, child: RecyclerView, dependency: View): Boolean {
        if (deltaY == 0f) {
            deltaY = dependency.getY() - child.height
        }

        Log.e("滑动:",dependency.getY().toString() )

        var dy: Float = dependency.getY() - child.height
        dy = if (dy < 0) 0f else dy
        val y: Float = -(dy / deltaY) * child.height


//        child.translationY = y
        return true
    }


}